import helloWorld from "./hello";

helloWorld();
import {pi, phi, absolute} from "./math";
console.log(pi);
// const absPhi: number
const absPhi = absolute(phi);
import RandonNumberGenerator, {pi as π} from "./math";
// (alias) class RandonNumberGenerator
// import RandonNumberGenerator
RandonNumberGenerator

//(alias) var π: number
// import π
console.log(π);

import * as math from "./math"
console.log(math.pi);
const positiveHpi = math.absolute(math.phi);

// 会执行math
import "./math"
console.log("3.14")

import { Cat, Dog } from "./animal";
type Animals = Cat | Dog;

// import type {createCatName} from "./animal";
// 'createCatName' cannot be used as a value because it was imported using 'import type'.
// const name = createCatName();

import { createCatName, type Cat as Cat1, type Dog1 } from "./animal";
export type Animals1 = Cat | Dog
const name = createCatName();
// 这种方式已经被废弃了
// Import assignment cannot be used when targeting ECMAScript modules. 
// Consider using 'import * as ns from "mod"', 'import {a} from "mod"', 'import d from "mod"', or another module format instead.
import fs = require("fs");
const code = fs.readFileSync("hello.ts","utf-8");

const maths = require("./maths")
maths.pi;

